package com.techsoul.module.pms.pojo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.techsoul.common.core.pojo.entity.DataEntity;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 仓储费率配置对象 tb_wms_charge_config
 * 
 * @author liuen
 * @date 2023-02-13
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tb_wms_charge_config")
public class ChargeConfig extends DataEntity {

    /**
     * 客户编码 外键customer表
     */
    private String customerId;
    private String contractName;

    private String contractNo;
    /**
     * 
     */
    private String customerName;

    /**
     * 费用编码，仓储费，包装费 ，叉车费。需要一个表维护，我们的tms项目中有，可以搬过来该表
     */
    private String frtNo;

    /**
     * 费用名称
     */
    private String frtName;

    /**
     * 结算基于 pack包装qty数量、vol 面积，weight重量，固定一个价格，就是同意价。
     */
    private String settleBy;

    /**
     * 结算时间，按天按月
     */
    private String chargeTimeBy;

    /**
     * 金额，也可以百分比
     */
    private Double amount;

    /**
     * 金额还是百分比 amt/ %
     */
    private String chargeType;

    /**
     * 客户类型
     */
    private String customerType;
    private String materialNo;
    /**
     * 入库费还是出库费
     */
    private String inAndOutCharge;

    /**
     * 有效期到
     */
    private Date validUntil;

    /**
     * 转换单位
     */
    private BigDecimal convertQuantity;

    /**
     * 开始数量
     */
    private BigDecimal startQuantity;

    /**
     * 最大数量
     */
    private BigDecimal endQuantity;

    /**
     * 有效期开始日
     */
    private Date startDateFrom;

}
